/**
*  @file       xint.c
*  @brief      外部中断库配置
*  @author     Z B T
*  @version	   LTE
*  @date       2015-10
*/

#include "xint.h"

/**
 *  @brief  外部中断初始化函数
 *  @param  [in]int_n, [in]INTx
 *  @return None
 */
uint_8 xint_inilize(enum XINT_N xint_n, struct XINT_INIT INTx)
{
	if (xint_n > xint_1)
	{
		return 1;
	}

	if (xint_n == xint_0)
	{
		if (INTx.intInterrupt == ENABLE)
		{
			EX0 = 1;
		}
		else
		{
			EX0 = 0;
		}
		if (INTx.intMode == fallEdge)
		{
			IT0 = 1;
		}
		else
		{
			IT0 = 0;
		}
		if (INTx.intPolity == highPolity)
		{
			PX0 = 1;
		}
		else
		{
			PX0 = 0;
		}
		return 0;
	}

	if (xint_n == xint_1)
	{
		if (INTx.intInterrupt == ENABLE)
		{
			EX1 = 1;
		}
		else
		{
			EX1 = 0;
		}
		if (INTx.intMode == fallEdge)
		{
			IT1 = 1;
		}
		else
		{
			IT1 = 0;
		}
		if (INTx.intPolity == highPolity)
		{
			PX1 = 1;
		}
		else
		{
			PX1 = 0;
		}
		return 0;
	}
	return 2;
}
